Add vector search index feature and end-to-end logging#1113
Merged
dluc merged 5 commits intomicrosoft:mainfrom Dec 18, 2025
Merged
Add vector search index feature and end-to-end logging#1113dluc merged 5 commits intomicrosoft:mainfrom
dluc merged 5 commits intomicrosoft:mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR implements a comprehensive vector search feature with SQLite-based indexing, embeddings caching, and diagnostic tooling. The changes consolidate constants, add factory patterns for embedding providers, introduce a doctor command for system health checks, and establish an end-to-end testing framework with per-test C# logging.
Key changes:
- Vector search implementation with SQLite storage, math utilities, and embedding provider factories
- Constants consolidation from module-specific files into
src/Core/Constants.cs - New
doctorcommand for validating configuration and checking system dependencies - Comprehensive test coverage including new E2E test framework with Python-based test harness
Reviewed changes
Copilot reviewed 118 out of 119 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/e2e/*.py | Five new E2E test scenarios covering CRUD, search, FTS stemming, vector search, and embeddings cache |
| tests/e2e/framework/*.py | E2E testing framework with CLI execution, database inspection, and logging helpers |
| tests/Main.Tests/Unit/Commands/DoctorCommandTests.cs | Unit tests for new doctor command validating config and dependencies |
| tests/Main.Tests/Services/*FactoryTests.cs | Tests for SearchIndexFactory and EmbeddingGeneratorFactory |
| tests/Core.Tests/Search/*VectorIndexTests.cs | Comprehensive unit/integration tests for vector index functionality |
| tests/Core.Tests/Embeddings/Cache/SqliteEmbeddingCacheTests.cs | Updated cache tests to include token_count parameter |
| src/Main/Services/EmbeddingGeneratorFactory.cs | New factory for creating embedding generators from config |
| src/Main/CLI/Commands/DoctorCommand.cs | New diagnostic command for system health checks |
| src/Core/Search/VectorMatch.cs | Model for vector search results |
| src/Directory.Packages.props | Package version updates to Microsoft.Extensions.* 10.0.0 |
Comments suppressed due to low confidence (1)
src/Directory.Packages.props:1
- The Microsoft.Extensions packages are being updated to version 10.0.0. As of the knowledge cutoff (January 2025), .NET 10 has not been released yet. The latest stable version is .NET 9, with Microsoft.Extensions packages at version 9.x. Version 10.0.0 may not exist or may be a pre-release version. Verify that these package versions are valid and available in NuGet.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
dluc
commented
Dec 18, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
doctorcommand and embedding generator factory integration.Details